/**
 * 微信公众号jssdk处理 非小程序处理
 */
// #ifdef H5
import Vue from 'vue'
import {request} from '@/api/request/index.js'
const wx = require('@/util/weixin/h5/jweixin-moudle.js')

function _call_Back(p) {
	if (p.signature) {
		p.link = window.location.origin + "/weixin/h5/redirect_share.ashx?url=" + encodeURIComponent(p.link);
		wx.config({
			debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来，若要查看传入的参数，可以在pc端打开，参数信息会通过log打出，仅在pc端时才会打印。
			appId: "wxa255c61318d32928", // 必填，公众号的唯一标识
			timestamp: p.timestamp, // 必填，生成签名的时间戳
			nonceStr: p.nonceStr, // 必填，生成签名的随机串
			signature: p.signature, // 必填，签名，见附录1
			jsApiList: ['onMenuShareTimeline', 'onMenuShareAppMessage', 'getLocation', 'chooseWXPay'] // 必填，需要使用的JS接口列表，所有JS接口列表见附录2
		});
		wx.ready(function() {
			// 1 判断当前版本是否支持指定 JS 接口，支持批量判断
			wx.checkJsApi({
				jsApiList: [
					'onMenuShareTimeline',
					'onMenuShareAppMessage',
					'getLocation',
					'chooseWXPay'
				],
				success: function(res) {
					if (!res.checkResult.onMenuShareTimeline) {
						//微信低版本处理
						uni.showToast({
							title: '您的微信版本过低'
						})
					}
				}
			});
			//分享给朋友
			wx.onMenuShareAppMessage({
				title: p.title,
				desc: p.desc,
				link: p.link,
				imgUrl: p.imgUrl,
				trigger: function() {
					// 你可以在这里对分享的数据进行重组
					if (p.trigger) {
						p.trigger(this);
					}
				},
				success: function() {
					if (p.success) {
						p.success();
					}
				},
				cancel: function() {
					//alert('已取消');
				},
				fail: function(res) {
					if (p.fail) {
						p.fail(res);
					}
					//alert(JSON.stringify(res));
				}
			});
			//分享到朋友圈
			wx.onMenuShareTimeline({
				title: p.content,
				desc: p.desc,
				link: p.link,
				imgUrl: p.imgUrl,
				trigger: function() {
					// 你可以在这里对分享的数据进行重组
					if (p.trigger) {
						p.trigger(this);
					}
				},
				success: function() {
					if (p.success) {
						p.success();
					}
				},
				cancel: function() {
					//alert('已取消');
				},
				fail: function(res) {
					if (p.fail) {
						p.fail(res);
					}
					//alert(JSON.stringify(res));
				}
			});
		});
	}
}
import checkweixin from '@/util/weixin/h5/checkweixin.js'
let wxbroswor=checkweixin()

function gcj02tobd09(lng, lat){
	var lat =+lat;
	var lng =+lng;
	var z =Math.sqrt(lng * lng + lat * lat) +0.00002 * Math.sin(lat * x_PI);
	var theta = Math.atan2(lat, lng) + 0.000003 * Math.cos(lng * x_PI);
	var bd_lng = z*Math.cos(theta) + 0.0065;
	var bd_lat = z*Math.cos(theta) + 0.006; 
	return [bd_lng,bd_lat];
}

export default ({
	Share(p) {
		// if(!wxbroswor){
		// 	console.log('no weixin')
		// 	return;
		// }
		p=p||{};
		if (wx) {
			p.timestamp = new Date().getTime();
			p.nonceStr = Math.random().toString(36).substr(2);

			request.get( {
				data: {
					url: window.location.origin+window.location.pathname,
					timestamp: p.timestamp,
					nonceStr: p.nonceStr
				}
			},'/weixin/h5/signature.ashx').then(res => {
				console.log(res)
				if(res.Status=="ok"){
					p.signature = res.Tag
					_call_Back(p);
				}
			})
		}
	},
	getMyloaction(callback) {
		//获取位置信息
		wx.getLocation({
			type: 'gcj02',
			success: function(res) {
				let newres = gcj02tobd09(res.longitude,res.latitude)
				uni.showModal({
					content:'lat=${res.latitude}'
				})
				callback(newres)
			},
			cancel() {
				uni.showToast({
					title: '您可以手动设置送货地址'
				})
			}
		});
	},
	chooseWXPay(tag) {
		wx.chooseWXPay({
			timestamp: 0, // 支付签名时间戳，注意微信jssdk中的所有使用timestamp字段均为小写。但最新版的支付后台生成签名使用的timeStamp字段名需大写其中的S字符
			nonceStr: '', // 支付签名随机串，不长于 32 位
			package: '', // 统一支付接口返回的prepay_id参数值，提交格式如：prepay_id=\*\*\*）
			signType: '', // 签名方式，默认为'SHA1'，使用新版支付需传入'MD5'
			paySign: '', // 支付签名
			success: function(res) {
				// 支付成功后的回调函数
			},
			fail(){},
			cancel(){},
		});
	},
})

// #endif
